<?
/*
用于生成静态页面的相关函数

sample1：将动态页面模板生成html页面
Createhtml('文件名','模板路径','html页面路径','日志路径')

sample2：将指定字符串生成静态页面
createfile('生成路径','生成文件名','被生成的字符串',$opentype='w')
*/

/*
* 获取本地文件的字符串
* @param path 文件路径+文件名
* return String
*/
function getFileStr($path)
{
	if(file_exists($path))//判断文件是否存在
	{ 
		$file = file($path); 
		$count = count($file); 
		for ($k=0;$k<$count;$k++)
		{ 
			$str .= $file[$k]; 
		}
	}
	else
	{
		$str="";
	}
	return $str;
}


/*
创建文件夹
$path 文件路径
*/
function createFolder($path) 
{ 
	
	if (!file_exists($path)) 
	{ 
		if(createFolder(dirname($path)))
		{
			if(mkdir($path, 0777))
			{
				return true;
			} 
			else
			{
				return false;
			}
		}
	} 
	else
	{
		return true;
	}
} 

/*
*生成文件
*@parma paht 文件路径
*@parma filename 文件名
*@parma content 字符串
*/
function createfile($path="./",$filename="none.html",$content="",$opentype='w')
{
	createFolder($path);
	$filename=$path.$filename;
	$fp=fopen($filename,$opentype);
	/* 
	检查文件是否被创建且可写 
	*/ 
	if (!is_writable ($filename)){ 
		echo "文件：".$filename."不可写，请检查其属性后重试!"; 
		return false;
	} 
	
	if (!fwrite ($fp,$content)){ //将信息写入文件 
		echo "生成文件".$filename."失败!<br/>写入内容：</br>".$content; 
		return false;
	} 
	fclose ($fp); //关闭指针 
	return true; 
}


/**
生成静态页面
*@param filename	新页面名称
*@param path1		模板页面地址(绝对路径)
*@param path2		生成页面地址(相对路径)
*@param path3 		log地址(相对路径+文件名)
*/
function Createhtml($filename,$path1,$path2,$path3="")
{
	$okstr = file_get_contents ($path1);
	if(createfile($path2,$filename,$okstr,'w'))
	{
		$log="生成成功！\r\n";
		$rs=true;
	}
	else
	{
		$log="生成失败！\r\n";
		$rs=false;
	}
	if($path3!='')
	{
		$log=$path2.$filename.$log;
		createfile($path3,date('Ym')."log.txt",$log,'a+');
		return $rs;
	}
	else
	{
		return $rs;
	}
}
?>